import tkinter as tk
from tkinter import messagebox
from random import random


root = tk.Tk()
# 设置窗口大小和位置
root.geometry("500x300+100+100")
root.title("辞职信")
# 创建一个 Frame 对象 frame1，并将其添加到主窗口中。
frame1 = tk.Frame(root)
frame1.pack()


tk.Label(frame1, text="尊敬的各位领导：", font=24, padx=30, pady=30).pack(
    side=tk.LEFT, anchor=tk.N
)
img = tk.PhotoImage(file="farewall.png")

label_img = tk.Label(frame1, image=img, padx=30, pady=30, bd=0)
label_img.pack(side=tk.LEFT, anchor=tk.N)

tk.Label(
    frame1, text="辞职人：山河", height=25, font=24, padx=30, pady=30, anchor=tk.S
).pack(side=tk.LEFT)

# 在 frame1 中添加辞职信的内容和两个按钮（“同意”和“不同意”）。
yes_btn = tk.Button(frame1, text="同意", width=10, height=1, bd=1, bg="green")
no_btn = tk.Button(frame1, text="不同意", width=10, height=1, bd=1, bg="red")

# 设置按钮的位置
yes_btn.place(relx=0.3, rely=0.7, anchor=tk.CENTER)
no_btn.place(relx=0.7, rely=0.7, anchor=tk.CENTER)

# 创建另一个 Frame 对象 frame2，并将其添加到主窗口中。
frame2 = tk.Frame(root)

# 在 frame2 中添加一段告别语和一个“退出”按钮。
tk.Label(
    frame2,
    text="老板大人，臣告退了\n这一退，可能就是一辈子！！\n",
    font=("黑体", 14),
    justify=tk.LEFT,
    height=300,
    fg="red",
    padx=50,
).pack()

tk.Button(frame2, text="退出", command=root.quit).place(relx=0.9, rely=0.8)


def on_exit():
    messagebox.showinfo(title="提示", message="此路不通")


# 绑使用 protocol 方法绑定窗口关闭事件，当用户尝试关闭窗口时，调用 on_exit 函数，显示提示框“此路不通”。
root.protocol("WM_DELETE_WINDOW", on_exit)


def move(event):
    no_btn.place(relx=random(), rely=random(), anchor=tk.CENTER)


# 绑定鼠标进入事件
no_btn.bind("<Enter>", move)


def sure():
    frame1.pack_forget()
    frame2.pack()


# 绑定按钮事件
yes_btn.config(command=sure)


root.mainloop()
